package com.elitesland.org.param;

import com.elitesland.core.base.param.AbstractOrderQueryParam;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

@EqualsAndHashCode(callSuper = true)
@Data
@ApiModel("组织结构BU查询对象")
public class OrgBuQParam extends AbstractOrderQueryParam {

    private static final long serialVersionUID = -4898253500093878875L;

    @ApiModelProperty("BU编号")
    String code;

    @ApiModelProperty("BU名称")
    String name;

    @ApiModelProperty("BU简称")
    String abbr;

    @ApiModelProperty("BU类型")
    String type;

    @ApiModelProperty("BU类型2")
    String type2;

    @ApiModelProperty("BU类型3")
    String type3;

    @ApiModelProperty("BU类型4")
    String type4;

    @ApiModelProperty("BU类型5")
    String type5;

    @ApiModelProperty("BU类型6")
    String type6;

    @ApiModelProperty("BU类型7")
    String type7;

    @ApiModelProperty(value = "是否虚拟单位，用于财务责任中心")
    Boolean isVirtual;

    @ApiModelProperty("BU状态 [UDC]COM:STATUS_ACTIVEORNO")
    String status;

    @ApiModelProperty("BU状态2")
    String status2;

    @ApiModelProperty("BU状态3")
    String status3;

    @ApiModelProperty("上级ID")
    Long parentId;

    @ApiModelProperty(value = "排序号码")
    Integer sortNo;

    @ApiModelProperty("关系路径")
    String path;

    @ApiModelProperty("地址号")
    Long addrNo;

    @ApiModelProperty("BU层级 [UDC]ORG:BU_LEVEL")
    String level;

    @ApiModelProperty("区域 [UDC]COM:REGION")
    String region;

    @ApiModelProperty("负责人员工ID")
    Long chargeEmpId;

    @ApiModelProperty("关联BU ID-事业部")
    Long refBuId;

    @ApiModelProperty("关联BU ID-利润中心")
    Long refBuId2;

    @ApiModelProperty("关联BU ID-成本中心")
    Long refBuId3;

    @ApiModelProperty("关联BU ID4")
    Long refBuId4;

    @ApiModelProperty("关联BU ID5")
    Long refBuId5;

    @ApiModelProperty("关联BU ID6")
    Long refBuId6;

    @ApiModelProperty("外部编码")
    String externalCode;

    @ApiModelProperty("ES1")
    String es1;

    @ApiModelProperty("ES2")
    String es2;

    @ApiModelProperty("ES3")
    String es3;

    @ApiModelProperty("ES4")
    String es4;

    @ApiModelProperty("ES5")
    String es5;

    @ApiModelProperty("ES6")
    String es6;

    @ApiModelProperty("ES7")
    String es7;

    @ApiModelProperty("ES8")
    String es8;

    @ApiModelProperty("ES9")
    String es9;

    @ApiModelProperty("ES10")
    String es10;
}
